Apache ActiveMQ ™ -- ActiveMQ 3 Transport Configurations
Site > Old Links > Previous Versions > ActiveMQ 3 Transport Configurations
Some of the transports support configuration, such as timeout values, maximum retry count and so forth. To configure the transports you can use the URI query syntax. e.g.
<![CDATA[ tcp://foo:1234?asyncSend=true&socketBufferSize=10000 ]]>
If you are using a list of URLs like above with the list and reliable protocols you can wrap the list in parens to be able to configure the list. e.g.
<![CDATA[ reliable:(tcp://foo:61699,tcp://bar:61617,tcp://whatnot:61698)?maximumRetries=0 ]]>
Generic configuration options
Option Name
Default Value
Type
brokerXmlConfig
null
String
cachingEnabled
true
boolean
clientID
null
String
copyMessageOnSend
true
boolean
disableTimeStampsByDefault
false
boolean
doMessageCompression
true
boolean
doMessageFragmentation
true
boolean
messageCompressionLimit
32768
int
messageCompressionStrategy
0
int
messageFragmentationLimit
65536
int
optimizedMessageDispatch
false
boolean
password
null
String
prepareMessageBodyOnSend
true
boolean
turboBoost
true
boolean
useAsyncSend
true
boolean
useEmbeddedBroker
false
boolean
userName
null
String
wireFormat
default
String
noDelay
false
boolean
brokerXmlConfig
Sets the Xml Configuration file used to configure the ActiveMQ broker via Spring if using embedded mode. The filename is assumed to be on the classpath unless a URL is specified. So a value of
<![CDATA[foo/bar.xml]]>
would be assumed to be on the classpath whereas
<![CDATA[file:dir/file.xml]]>
would use the file system. Any valid URL string is supported.
cachingEnabled
Provides optimisations on the wire format (caching data at each end and using references to it to minmise the message size
clientID
Used to set the JMS clientID of connection.
copyMessageOnSend
Use to avoid the overhead of doing a deep copy of the JMS message everytime the message is sent.
disableTimeStampsByDefault
Use to avoid the overhead of setting a timestamp on each message produced.
doMessageCompression
If messages should be compressed.
doMessageFragmentation
If messages should be chunked into smaller fragments on the clients side.
messageCompressionLimit
Data size above which compression will be used
messageCompressionStrategy
The compression strategy to use when compressing messages. Defaults to the value of java.util.zip.Deflater.DEFAULT_STRATEGY (0).
messageFragmentationLimit
Data size above which message fragmentation will be used
optimizedMessageDispatch
password
The user password used to authenticate with the broker.
prepareMessageBodyOnSend
Causes pre-serialization of messages before send.
turboBoost
Enables a number of performance enhancements which are disabled by default to ensure J2EE certification. turboBoost turns on a bunch of optimisations: disableTimeStampsByDefault, useAsyncSend, cachingEnabled, and optimizedMessageDispatch and then disables copyMessageOnSend and prepareMessageBodyOnSend
useAsyncSend
Used to enable asynchronous sending, which boost performance by using another thread to handle sending of messages to the socket.
useEmbeddedBroker
Set to true if you want start an embeded broker when the first connection is created.
userName
The user name used to authenticate with the broker.
wireFormat
Allows a custom wire format to be used; otherwise the default Java wire format is used which is designed for minimum size and maximum speed on the Java platform.
noDelay
Used to indicate whether messages are dispatched as quickly as possible or not. (The latency versus throughput trade off). When using TCP based transport this option is a means of disabling Nagles which can often improve performance on synchronous sends.
TCP configuration options
- soTimeout (long) sets the SO_TIMEOUT) value (in milliseconds) on the socket
- socketBufferSize (int) the size of the buffer size on the socket
SSL configuration options
Same as TCP. SSL certificates are configured at the VM level. See How do I use SSL
List configuration options
maximumRetries (int) the maximum number of times that this protocol will attempt to make a connection on a failure before giving up completely and throwing an exception up to the JMS client. Set this value to zero (or -1) to force an infinite reconnection loop. Warning: setting an infinite reconnection loop could hang your JMS client program indefinitely.
failureSleepTime (long) the amout of time that the transport will sleep before trying to reconnect again
establishConnectionTimeout (long) the timeout value for which a connection must start by on connection start - otherwise the start connection will fail
incrementTimeout (boolean) should the timeout increase, exponentially as connection attempts are made
maximumTimeout (long) the maximum timeout value that it should increase to (if enabled)
Reliable and Remote configuration options
Same as the List configuration options above - plus
- keepAliveTimeout (long) the amount of time without receiving a keep alive ping before the connection is considered dead.
Peer configuration options
discoveryURI (string) the URI used to discover find other nodes; which defaults to using multicast discovery
remoteUserName, removePassword (string) the optional login/password to connect to the remote brokers with
peerURIs (string) the hard coded URIs of peers to connect to
Discovery configuration options
- channelName (string) provides a way to separate out different logical groups of nodes in the cluster
Multicast configuration options
timeToLive (int) defaults to 1 so we don't send multicast messages beyond our own local subnet.
loopbackMode (boolean) defaults to false so we don't see our own messages
Overview
Search
Sub Projects
Community
- Support
- Contributing
- Discussion Forums
- Mailing Lists
- IRC
- IRC Log
- Site
- Sponsorship
- Projects Using ActiveMQ
- Users
- Team
- Thanks
Features
- Advisory Message
- Clustering
- Cross Language Clients
- Enterprise Integration Patterns
- JMX
- JMS to JMS Bridge
- MasterSlave
- Message Groups
- Networks of Brokers
- Performance
- Persistence
- Security
- Virtual Destinations
- Visualisation
- More ...
Connectivity
- Ajax
- AMQP
- Axis and CXF Support
- C Integration
- C++
- C# and .Net Integration
- CMS
- J2EE
- JBoss Integration
- Jetty
- JNDI Support
- NMS
- REST
- RSS and Atom
- Spring Support
- Stomp
- Tomcat
- Unix Service
- WebLogic Integration
- XMPP
- More ...
Using ActiveMQ 5
- Getting Started
- Initial Configuration
- Running a Broker
- Embedded Brokers
- Command Line Tools
- Configuring Transports
- Examples
- Web Samples
- Monitoring the Broker
- Xml Configuration
- Xml Reference
- More ...
Using ActiveMQ 4
- Getting Started
- Initial Configuration
- Running a Broker
- Embedded Brokers
- Command Line Tools
- Configuring Transports
- Examples
- Web Samples
- Monitoring the Broker
- Xml Configuration
- Xml Reference
- More ...
Tools
External Tools
Support
Related Projects
Developers
Tests
- Maven2 Performance Plugin
- Benchmark Tests
- JMeter System Tests
- JMeter Performance Tests
- Integration Tests